package com.lingxu.base.common.util;

import org.apache.commons.lang3.StringUtils;

import java.util.regex.Matcher;
import java.util.regex.Pattern;

/**
 * 提取关键词
 */
public class ExtractkeywordsUtils {

    /**
     * 根据地址获取 xx省xx市
     * @param address 地址
     * @return
     */
    public static String addressResolution(String address){
        if (StringUtils.isBlank(address)){
            return "";
        }
        String result = "";
        String regex = "(?<province>[^省]+自治区|.*?省|.*?行政区|.*?市)?(?<city>[^市]+自治州|.*?市|.*?地区|.*?行政单位|.+盟|市辖区|.*?县)";
        Matcher m = Pattern.compile(regex).matcher(address);
        while(m.find()){
            result = m.group("city");
            if (StringUtils.isNotBlank(result)){
                break;
            }
        }
        return result;
    }

    public static void main(String[] args) {
        System.out.println(ExtractkeywordsUtils.addressResolution("苏:宿迁市分行营业部"));
        System.out.println(ExtractkeywordsUtils.addressResolution("江苏省宿迁市分行营业部"));
        System.out.println(ExtractkeywordsUtils.addressResolution("苏:沭阳县城东分理处"));
    }

}
